package com.zte.cl.service;

import java.util.Map;

public interface PushService {

	/**
	 * 推送消息
	 * @param msg 消息{"title":"消息标题", "content":"消息内容"}
	 * @throws Exception
	 */
	void pushMsg(Map<String, String> msg) throws Exception;
	
	/**
	 * 向指定的公司推送消息
	 * @param publicAccount 推送消息使用的公众号
	 * @param companyIds 公司ID数组
	 * @param msg 消息{"title":"消息标题", "content":"消息内容"}
	 * @throws Exception
	 */
	void pushMsg(String publicAccount, String[] companyIds, Map<String, String> msg) throws Exception;
	
	/**
	 * 向指定的渠道推送消息
	 * @param publicAccount 推送消息使用的公众号
	 * @param channelId 渠道ID数组
	 * @param msg 消息{"title":"消息标题", "content":"消息内容"}
	 * @throws Exception
	 */
	void pushMsg(String publicAccount, Integer[] channelIds, Map<String, String> msg) throws Exception;
	
	/**
	 * 向指定的系统推送消息
	 * @param publicAccount 推送消息使用的公众号
	 * @param systemCodes 系统code数组
	 * @param msg 消息{"title":"消息标题", "content":"消息内容"}
	 * @throws Exception
	 */
	void pushMsgBySystem(String publicAccount, String[] systemCodes, Map<String, String> msg) throws Exception;
}
